from config import H0ST  # 导入配置文件中的主机地址


class ApiTender:
    """投标接口封装类

    功能：封装与投标相关的API请求操作
    主要方法：api_tender - 执行投标操作
    """

    def __init__(self, session):
        """初始化方法

        参数:
            session: requests.Session对象，用于保持会话状态
        """
        # 保存会话对象
        self.session = session

        # 构建投标接口的完整URL
        # H0ST 是配置文件中的基础域名或IP
        # "/trust/trust/tender" 是投标接口路径
        self.__url_tender = H0ST + "/trust/trust/tender"

    def api_tender(self, id, amount):
        """执行投标操作

        参数:
            id: 标的ID（投资项目ID）
            amount: 投标金额（单位：元）

        返回:
            requests.Response对象 - 投标操作的响应结果
        """
        # 准备请求数据
        data = {
            "id": id,  # 标的ID
            "depositCertificate": "-1",  # 存款证明（-1表示无证明）
            "amount": amount,  # 投标金额
        }

        # 发送POST请求到投标接口
        # 使用session对象保持登录状态
        return self.session.post(url=self.__url_tender, data=data)